﻿/***************************************************************************
 * 文件名：CardVerificationService
 * 功能：
 * 说明：
 * -------------------------------------------------------------------------
 * 创建时间：2024/5/29 14:02:44
 * 创建人：金文旭
 * 邮箱： ohayashi@163.com
 * =========================================================================
 *
 * 修改人：   
 * 修改时间：   
 * 修改说明：   
 ***************************************************************************/

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CardVerification.NewPlan
{
    /// <summary>
    /// 银行卡号校验服务接口
    /// </summary>
    public interface ICardVerificationService
    {
        /// <summary>
        /// 银行卡号校验服务-二要素
        /// </summary>
        /// <param name="cardNo">银行卡号</param>
        /// <param name="cerfiId">用户身份证号</param>
        /// <returns>校验结果对象</returns>
        CardVerifiMessage DoCardVerification(string cardNo,string cerfiId);
        /// <summary>
        /// 银行卡号校验服务-三要素
        /// </summary>
        /// <param name="cardNo">银行卡号</param>
        /// <param name="cerfiId">用户身份证号</param>
        /// <param name="customerNm">用户姓名</param>
        /// <returns>校验结果对象</returns>
        CardVerifiMessage DoCardVerification(string cardNo, string cerfiId, string customerNm);
        /// <summary>
        /// 银行卡号校验服务-四要素
        /// </summary>
        /// <param name="cardNo">银行卡号</param>
        /// <param name="cerfiId">用户身份证号</param>
        /// <param name="customerNm">用户姓名</param>
        /// <param name="phoneNo">手机号</param>
        /// <returns>校验结果对象</returns>
        CardVerifiMessage DoCardVerification(string cardNo, string cerfiId, string customerNm,string phoneNo);
        ///// <summary>
        ///// 银行卡号校验服务-六要素
        ///// </summary>
        ///// <param name="cardNo">银行卡号</param>
        ///// <param name="cerfiId">用户身份证号</param>
        ///// <param name="customerNm">用户姓名</param>
        ///// <param name="phoneNo">手机号</param>
        ///// <param name="CVN2">银行卡CVN2</param>
        ///// <param name="expired">银行卡有效期</param>
        ///// <returns>校验结果对象</returns>
        //CardVerifiMessage DoCardVerification(string cardNo, string cerfiId, string customerNm, string phoneNo,string CVN2,string expired);
    }
}
